﻿/*
SINACOR - BMF&Bovespa
Arquivo: CamposObrigatoriosFiltroNegocio.cs
Criado em: 14-mai-2010 17:57:05
Arquiteto Responsável: p-dmartinelli
*/
using System;
using System.Collections.Generic;
using System.Text;
using Sinacor.Infra.Common.Validation;
using Sinacor.Infra.Common.Exceptions;
using Sinacor.Infra.Service.ExceptionHandling;
using Sinacor.Infra.Service.Validation;
using Sinacor.Infra.Service.Validation.BusinessRules;
using Sinacor.Servico.Bovespa.Alocacao.BusinessEntity;
using Sinacor.Servico.Bovespa.Alocacao.BusinessEntity.Parameter;


namespace Sinacor.Servico.Bovespa.Alocacao.BusinessLogic.BusinessRuleValidation 
{
	public class CamposObrigatoriosFiltroNegocio : BaseBusinessRuleValidation<FiltroNegocio>, IBusinessRuleValidation 
	{
		#region Atributos
		private int _dataPregaoObrigatorio = 520011;
		private int _erroObjetoNulo = 314816;
		#endregion
		#region Propriedades
		public int DataPregaoObrigatorio
		{
			get { return _dataPregaoObrigatorio; }
			set { _dataPregaoObrigatorio = value; }
		}

		public int ErroObjetoNulo
		{
			get { return _erroObjetoNulo; }
			set { _erroObjetoNulo = value; }
		}
		#endregion
		#region Métodos
		public List<ValidationError> GetErrors()
		{

            return base.ErrorsList;
		}

		public void Validate()
		{

            if (base.EntityToValidate != null)
            {
                SinacorValidation validation = new SinacorValidation();
                validation.AddValidation<Alocacao.BusinessEntity.Parameter.FiltroNegocio>(EntityToValidate);
            }
            else
            {
                base.AddValidationError(ErroObjetoNulo);
            }

		}
		#endregion
	}

}